spacer image

Technote 10002

ÉCÉìÉvÉbÉgÉÅÉ\ÉbÉhÅuDZÇΔǶÇËÅvÇ©ÇÁÅAåªç›ëIëÇ≥ÇÍǃǢÇÈï∂éöóÒÇìæÇÈ

Written by : Takayuki Mizuno (JapanDTS) Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@March 1994

ñ{ÉeÉNÉjÉJÉãÉmÅ[ÉgÇÕÅAÅuDZÇΔǶÇËÅvÇ™íPåÍìoò^É_ÉCÉAÉçÉOÇÉIÅ[ÉvÉìÇ∑ÇÈÇΔÇ´Ç…ÅAåªç›ÉAÉvÉäÉPÅ[ÉVÉáÉìíÜÇ≈ëIëÇ≥ÇÍǃǢÇÈï∂éöóÒÇéÛÇØéÊÇÈÇΩÇflÇ…égópǵǃǢÇÈGetTextÉAÉbÉvÉãÉCÉxÉìÉgDžǬǢǃê‡ñæÇ∑ÇÈLJÇÃÇ≈Ç∑ÅB

Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@Å@

ŰText Services ManagerÇÃíËÇflÇÈ4ǬÇÃÉAÉbÉvÉãÉCÉxÉìÉg

Text Services ManagerÇ…ëŒâûǵÇΩÉCÉìÉvÉbÉgÉÅÉ\ÉbÉhÇΔÉAÉvÉäÉPÅ[ÉVÉáÉìÇÕÅAÉCÉìÉâÉCÉìì¸óÕÇçsǧÇΩÇflÇ…ÉAÉbÉvÉãÉCÉxÉìÉgÇâÓǵǃèÓïÒÇÃÇ‚ÇËÇΔÇËÇçsǢNjÇ∑ÅBǪǵǃÅAText Services ManagerÇ≈ÇÕÅAÉCÉìÉâÉCÉìì¸óÕÇÉTÉ|Å[ÉgÇ∑ÇÈÇΩÇflÇ…à»â∫ÇÃ4ǬÇÃÉAÉbÉvÉãÉCÉxÉìÉgÇíËã`ǵǃǢNjÇ∑ÅB
í èÌÅAÉAÉvÉäÉPÅ[ÉVÉáÉìÇText Services ManagerëŒâûÇ…Ç∑ÇÈÇΩÇflÇ…ÇÕÅADZÇÃ4ǬÇÃÉAÉbÉvÉãÉCÉxÉìÉgÇ…ëŒÇ∑ÇÈÉnÉìÉhÉâÇópà”Ç∑ÇÍÇŒè\ï™Ç≈Ç∑ÅB

Apple event ìÆçÏ
Update Active Input Area ÉAÉNÉeÉBÉuÉCÉìÉvÉbÉgÉGÉäÉAÇÉAÉbÉvÉfÅ[ÉgÇ∑ÇÈ
Position To Offset éwíËǵÇΩÉXÉNÉäÅ[ÉìÉ|ÉWÉVÉáÉìÇÃÉoÉCÉgÉIÉtÉZÉbÉgÇìæÇÈ
Offset To Position éwíËǵÇΩÉoÉCÉgÉIÉtÉZÉbÉgÇÃÉXÉNÉäÅ[ÉìÉ|ÉWÉVÉáÉìÇìæÇÈ
Show/Hide Input Window ÉtÉçÅ[ÉeÉBÉìÉOÉEÉCÉìÉhÉEÇÃï\é¶Å^è¡ãéÇçsǧ

ï\1Å@Text Services ManagerÇ™íËã`Ç∑ÇÈÉAÉbÉvÉãÉCÉxÉìÉg

ŰÅuDZÇΔǶÇËÅvÇÃÉvÉâÉCÉxÅ[ÉgÉAÉbÉvÉãÉCÉxÉìÉg Ñü GetTextÉAÉbÉvÉãÉCÉxÉìÉg

äøéöTalk7Ç…ÉoÉìÉhÉãÇ≥ÇÍǃǢÇÈì˙ñ{åÍÉCÉìÉvÉbÉgÉÅÉ\ÉbÉhÅuDZÇΔǶÇËÅvÇÕè„ãLÇÃ4ǬÇÃÉAÉbÉvÉãÉCÉxÉìÉgÇ…â¡Ç¶GetTextÇΔåƒÇŒÇÍÇÈÉAÉbÉvÉãÉCÉxÉìÉgÇÉAÉvÉäÉPÅ[ÉVÉáÉìÇ…ëóÇËÇ‹Ç∑ÅBDZÇÃGetTextÉAÉbÉvÉãÉCÉxÉìÉgÇÕÅuDZÇΔǶÇËÅvÇ™ÅAåªç›ÉAÉvÉäÉPÅ[ÉVÉáÉìíÜÇ≈ëIëÇ≥ÇÍǃǢÇÈï∂éöóÒÇéÛÇØéÊÇÈÇΩÇflÇ…íËã`ǵÇΩÉAÉbÉvÉãÉCÉxÉìÉgÇ≈Ç∑ÅBÅuDZÇΔǶÇËÅvÇÕÉAÉvÉäÉPÅ[ÉVÉáÉìÇ™GetTextÉAÉbÉvÉãÉCÉxÉìÉgÇÉTÉ|Å[ÉgǵǃǢÇÈèÍçáÇ…ÇÕÅADZÇÃÉAÉbÉvÉãÉCÉxÉìÉgÇÃã@î\ÇóòópǵNjÇ∑ÅB
ÅuÉCÉìÉâÉCÉìí«â¡ã@î\ÅvÅiTSMTEÅjÇÕGetTextÉAÉbÉvÉãÉCÉxÉìÉgÇÃÇΩÇflÇÃÉnÉìÉhÉâÇópà”ǵǃǢNjÇ∑ÅB

ãÔëÃìIÇ…ÅAÅuDZÇΔǶÇËÅvÇÕÇ«ÇÃÇÊǧǻéûDžDZÇÃGetTextÉAÉbÉvÉãÉCÉxÉìÉgÇóòópÇ∑ÇÈÇÃÇ≈ǵÇÂǧǩÅB ÅuDZÇΔǶÇËÅvÇ≈ÇÕíPåÍìoò^ÇçsǧÇΔÇ´Ç…íPåÍìoò^É_ÉCÉAÉçÉOÇÉIÅ[ÉvÉìǵNjÇ∑Ç™ÅADZÇÃéûGetTextÉAÉbÉvÉãÉCÉxÉìÉgÇÉCÉìÉâÉCÉìì¸óÕÇçsǡǃǢÇÈÉAÉvÉäÉPÅ[ÉVÉáÉìÇ…ëóÇËÇ‹Ç∑ÅB
LJǵÅADZÇÃÉAÉvÉäÉPÅ[ÉVÉáÉìÇ™TSMTEÇóòópǵǃÉCÉìÉâÉCÉìì¸óÕÇÉTÉ|Å[ÉgǵǃǢÇÈÇΔÇ´Ç…ÇÕÅATSMTEÇ™éùǬGetTextÉAÉbÉvÉãÉCÉxÉìÉgÇÃÉnÉìÉhÉâÇ™ÅAåªç›ëIëÇ≥ÇÍǃǢÇÈï∂éöóÒÇÅuDZÇΔǶÇËÅvÇ…ëóÇËï‘ǵNjÇ∑ÅBǵÇΩǙǡǃÅATSMTEÇóòópǵǃÉCÉìÉâÉCÉìì¸óÕÇçsǡǃǢÇÈÉAÉvÉäÉPÅ[ÉVÉáÉìÇ≈ÇÕé©ìÆìIDžDZÇÃã@î\Ç™ÉTÉ|Å[ÉgÇ≥ÇÍÇ‹Ç∑ÅBé¿ç€ÅATSMTEÇóòópǵǃÉCÉìÉâÉCÉìì¸óÕÇÉTÉ|Å[ÉgǵǃǢÇÈFinderÇ‚TeachTextǻǫÇ≈ÇÕÅADZÇÃÉAÉbÉvÉãÉCÉxÉìÉgÇégǡǃåªç›ëIëÇ≥ÇÍǃǢÇÈï∂éöóÒÇÅuDZÇΔǶÇËÅvÇ…ëóÇÈDZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅB
ê}1Ç≈ÇÕÅATeachTextÇÃÉEÉBÉìÉhÉEè„Ç≈ëIëÇ≥ÇÍǃǢÇÈï∂éöóÒÇ™ÅuDZÇΔǶÇËÅvÇÃíPåÍìoò^É_ÉCÉAÉçÉOÇÃíPåÍÉtÉBÅ[ÉãÉhÇ…ì«Ç›çûÇ‹ÇÍǃǢÇÈÇΔDZÇÎÇé¶ÇµÇƒÇ¢Ç‹Ç∑ÅB


ê}1Å@TeachTextÇΔÅuDZÇΔǶÇËÅvÇÃíPåÍìoò^É_ÉCÉAÉçÉO


TSMTEÇóòópǵǻǢÇ≈ÉCÉìÉâÉCÉìì¸óÕÇÉTÉ|Å[ÉgÇ∑ÇÈÉAÉvÉäÉPÅ[ÉVÉáÉìLJì‡ïîÇ…ÅADZÇÃGetTextÉAÉbÉvÉãÉCÉxÉìÉgÇ…ëŒÇ∑ÇÈÉnÉìÉhÉâÇópà”Ç∑ÇÈDZÇΔÇ…ÇÊÇËÅAÅuDZÇΔǶÇËÅvÇÃíPåÍìoò^É_ÉCÉAÉçÉOÇ…íºê⁄ëIëÇ≥ÇÍǃǢÇÈï∂éöóÒÇëóÇÈDZÇΔÇ™èoóàÇÈÇÊǧDžǻÇËÇ‹Ç∑ÅB

ŰGetTextÉAÉbÉvÉãÉCÉxÉìÉgÇÃè⁄ç◊

à»â∫ÇÕÅAGetTextÉAÉbÉvÉãÉCÉxÉìÉgÇÃè⁄ç◊Ç≈Ç∑ÅB

Event class kTextServiceClass
Event ID kGetText (='gtxt')
Requested action åªç›ÇÃëIëîÕàÕDždžÇÈÉeÉLÉXÉgÉfÅ[É^Çï‘êMÉpÉâÉÅÅ[É^ÇΔǵǃï‘Ç∑ÅB
Required parameters
Keyword: keyDocumentRefcon
Descriptor type: typeLongInteger
Data: ÉAÉvÉäÉPÅ[ÉVÉáÉìÇ™NewTSMDocumentä÷êîÇ…ìnǵÇΩÉÜÅ[ÉUÅ[íËã`ÇÃrefConílÅB
Keyword: keyAEServerInstance
Descriptor type: typeComponentInstance
Data: Component ManagerÇÃOpen Componentä÷êîÇ…ÇÊǡǃçÏÇÁÇÍÇΩÉRÉìÉ|Å[ÉlÉìÉgÉCÉìÉXÉ^ÉìÉXÅB
Optional parameter
Keyword: keyAEBufferSize (='buff')
Descriptor type: typeLongInteger
Data: ÅuDZÇΔǶÇËÅvÇ™éÛÇØéÊÇÈDZÇΔÇÃèoóàÇÈÉfÅ[É^ÇÃç≈ëÂÉoÉCÉgêîÅB
Retrun parameters
Keyword: keyAETheData
Descriptor type: typeText
Data: åªç›ÇÃëIëîÕàÕDždžÇÈÉeÉLÉXÉgÉfÅ[É^ÅB
ÇΩÇæÇµÅAkeyAEBufferSizeÇ≈éwíËÇ≥ÇÍÇÈç≈ëÂí∑Çí¥Ç¶ÇÈïîï™ÇÕä‹Ç‹Ç»Ç¢ÅB

éQçlï∂å£
New Inside Macintosh Text "Text Services Manager" (Addison Wesley)
Tech Note TE 27 - Inline Input for TextEdit with TSMTE
Macintosh DEVELOPER'S JOURNAL No.1 "TSMTE" ÅiãZèpï]ò_é–Åj

[Table of Contents]

ˇ